+++ /dev/null
-decomp = [
-(193, 65, 768),
-(194, 65, 769),
-(195, 65, 770),
-(196, 65, 771),
-(197, 65, 776),
-(198, 65, 778),
-(200, 67, 807),
-(201, 69, 768),
-(202, 69, 769),
-(203, 69, 770),
-(204, 69, 776),
-(205, 73, 768),
-(206, 73, 769),
-(207, 73, 770),
-(208, 73, 776),
-(210, 78, 771),
-(211, 79, 768),
-(212, 79, 769),
-(213, 79, 770),
-(214, 79, 771),
-(215, 79, 776),
-(218, 85, 768),
-(219, 85, 769),
-(220, 85, 770),
-(221, 85, 776),
-(222, 89, 769),
-(225, 97, 768),
-(226, 97, 769),
-(227, 97, 770),
-(228, 97, 771),
-(229, 97, 776),
-(230, 97, 778),
-(232, 99, 807),
-(233, 101, 768),
-(234, 101, 769),
-(235, 101, 770),
-(236, 101, 776),
-(237, 105, 768),
-(238, 105, 769),
-(239, 105, 770),
-(240, 105, 776),
-(242, 110, 771),
-(243, 111, 768),
-(244, 111, 769),
-(245, 111, 770),
-(246, 111, 771),
-(247, 111, 776),
-(250, 117, 768),
-(251, 117, 769),
-(252, 117, 770),
-(253, 117, 776),
-(254, 121, 769),
-(256, 121, 776),
-(257, 65, 772),
-(258, 97, 772),
-(259, 65, 774),
-(260, 97, 774),
-(261, 65, 808),
-(262, 97, 808),
-(263, 67, 769),
-(264, 99, 769),
-(265, 67, 770),
-(266, 99, 770),
-(267, 67, 775),
-(268, 99, 775),
-(269, 67, 780),
-(270, 99, 780),
-(271, 68, 780),
-(272, 100, 780),
-(275, 69, 772),
-(276, 101, 772),
-(277, 69, 774),
-(278, 101, 774),
-(279, 69, 775),
-(280, 101, 775),
-(281, 69, 808),
-(282, 101, 808),
-(283, 69, 780),
-(284, 101, 780),
-(285, 71, 770),
-(286, 103, 770),
-(287, 71, 774),
-(288, 103, 774),
-(289, 71, 775),
-(290, 103, 775),
-(291, 71, 807),
-(292, 103, 807),
-(293, 72, 770),
-(294, 104, 770),
-(297, 73, 771),
-(298, 105, 771),
-(299, 73, 772),
-(300, 105, 772),
-(301, 73, 774),
-(302, 105, 774),
-(303, 73, 808),
-(304, 105, 808),
-(305, 73, 775),
-(309, 74, 770),
-(310, 106, 770),
-(311, 75, 807),
-(312, 107, 807),
-(314, 76, 769),
-(315, 108, 769),
-(316, 76, 807),
-(317, 108, 807),
-(318, 76, 780),
-(319, 108, 780),
-(324, 78, 769),
-(325, 110, 769),
-(326, 78, 807),
-(327, 110, 807),
-(328, 78, 780),
-(329, 110, 780),
-(333, 79, 772),
-(334, 111, 772),
-(335, 79, 774),
-(336, 111, 774),
-(337, 79, 779),
-(338, 111, 779),
-(341, 82, 769),
-(342, 114, 769),
-(343, 82, 807),
-(344, 114, 807),
-(345, 82, 780),
-(346, 114, 780),
-(347, 83, 769),
-(348, 115, 769),
-(349, 83, 770),
-(350, 115, 770),
-(351, 83, 807),
-(352, 115, 807),
-(353, 83, 780),
-(354, 115, 780),
-(355, 84, 807),
-(356, 116, 807),
-(357, 84, 780),
-(358, 116, 780),
-(361, 85, 771),
-(362, 117, 771),
-(363, 85, 772),
-(364, 117, 772),
-(365, 85, 774),
-(366, 117, 774),
-(367, 85, 778),
-(368, 117, 778),
-(369, 85, 779),
-(370, 117, 779),
-(371, 85, 808),
-(372, 117, 808),
-(373, 87, 770),
-(374, 119, 770),
-(375, 89, 770),
-(376, 121, 770),
-(377, 89, 776),
-(378, 90, 769),
-(379, 122, 769),
-(380, 90, 775),
-(381, 122, 775),
-(382, 90, 780),
-(383, 122, 780),
-(417, 79, 795),
-(418, 111, 795),
-(432, 85, 795),
-(433, 117, 795),
-(462, 65, 780),
-(463, 97, 780),
-(464, 73, 780),
-(465, 105, 780),
-(466, 79, 780),
-(467, 111, 780),
-(468, 85, 780),
-(469, 117, 780),
-(470, 220, 772),
-(471, 252, 772),
-(472, 220, 769),
-(473, 252, 769),
-(474, 220, 780),
-(475, 252, 780),
-(476, 220, 768),
-(477, 252, 768),
-(479, 196, 772),
-(480, 228, 772),
-(481, 550, 772),
-(482, 551, 772),
-(483, 198, 772),
-(484, 230, 772),
-(487, 71, 780),
-(488, 103, 780),
-(489, 75, 780),
-(490, 107, 780),
-(491, 79, 808),
-(492, 111, 808),
-(493, 490, 772),
-(494, 491, 772),
-(495, 439, 780),
-(496, 658, 780),
-(497, 106, 780),
-(501, 71, 769),
-(502, 103, 769),
-(505, 78, 768),
-(506, 110, 768),
-(507, 197, 769),
-(508, 229, 769),
-(509, 198, 769),
-(510, 230, 769),
-(511, 216, 769),
-(512, 248, 769),
-(513, 65, 783),
-(514, 97, 783),
-(515, 65, 785),
-(516, 97, 785),
-(517, 69, 783),
-(518, 101, 783),
-(519, 69, 785),
-(520, 101, 785),
-(521, 73, 783),
-(522, 105, 783),
-(523, 73, 785),
-(524, 105, 785),
-(525, 79, 783),
-(526, 111, 783),
-(527, 79, 785),
-(528, 111, 785),
-(529, 82, 783),
-(530, 114, 783),
-(531, 82, 785),
-(532, 114, 785),
-(533, 85, 783),
-(534, 117, 783),
-(535, 85, 785),
-(536, 117, 785),
-(537, 83, 806),
-(538, 115, 806),
-(539, 84, 806),
-(540, 116, 806),
-(543, 72, 780),
-(544, 104, 780),
-(551, 65, 775),
-(552, 97, 775),
-(553, 69, 807),
-(554, 101, 807),
-(555, 214, 772),
-(556, 246, 772),
-(557, 213, 772),
-(558, 245, 772),
-(559, 79, 775),
-(560, 111, 775),
-(561, 558, 772),
-(562, 559, 772),
-(563, 89, 772),
-(564, 121, 772),
-(896, 168, 769),
-(897, 913, 769),
-(899, 917, 769),
-(900, 919, 769),
-(901, 921, 769),
-(902, 927, 769),
-(903, 933, 769),
-(904, 937, 769),
-(905, 970, 769),
-(930, 921, 776),
-(931, 933, 776),
-(932, 945, 769),
-(933, 949, 769),
-(934, 951, 769),
-(935, 953, 769),
-(936, 971, 769),
-(962, 953, 776),
-(963, 965, 776),
-(964, 959, 769),
-(965, 965, 769),
-(966, 969, 769),
-(971, 978, 769),
-(972, 978, 776),
-(1016, 1045, 768),
-(1017, 1045, 776),
-(1019, 1043, 769),
-(1023, 1030, 776),
-(1028, 1050, 769),
-(1029, 1048, 768),
-(1030, 1059, 774),
-(1041, 1048, 774),
-(1073, 1080, 774),
-(1096, 1077, 768),
-(1097, 1077, 776),
-(1099, 1075, 769),
-(1103, 1110, 776),
-(1108, 1082, 769),
-(1109, 1080, 768),
-(1110, 1091, 774),
-(1134, 1140, 783),
-(1135, 1141, 783),
-(1209, 1046, 774),
-(1210, 1078, 774),
-(1224, 1040, 774),
-(1225, 1072, 774),
-(1226, 1040, 776),
-(1227, 1072, 776),
-(1230, 1045, 774),
-(1231, 1077, 774),
-(1234, 1240, 776),
-(1235, 1241, 776),
-(1236, 1046, 776),
-(1237, 1078, 776),
-(1238, 1047, 776),
-(1239, 1079, 776),
-(1242, 1048, 772),
-(1243, 1080, 772),
-(1244, 1048, 776),
-(1245, 1080, 776),
-(1246, 1054, 776),
-(1247, 1086, 776),
-(1250, 1256, 776),
-(1251, 1257, 776),
-(1252, 1069, 776),
-(1253, 1101, 776),
-(1254, 1059, 772),
-(1255, 1091, 772),
-(1256, 1059, 776),
-(1257, 1091, 776),
-(1258, 1059, 779),
-(1259, 1091, 779),
-(1260, 1063, 776),
-(1261, 1095, 776),
-(1264, 1067, 776),
-(1265, 1099, 776),
-(1533, 1575, 1619),
-(1534, 1575, 1620),
-(1535, 1608, 1620),
-(1536, 1575, 1621),
-(1537, 1610, 1620),
-(1691, 1749, 1620),
-(1693, 1729, 1620),
-(1710, 1746, 1620),
-(2272, 2344, 2364),
-(2280, 2352, 2364),
-(2283, 2355, 2364),
-(2418, 2503, 2494),
-(2419, 2503, 2519),
-(2685, 2887, 2902),
-(2686, 2887, 2878),
-(2687, 2887, 2903),
-(2730, 2962, 3031),
-(2762, 3014, 3006),
-(2763, 3015, 3006),
-(2764, 3014, 3031),
-(2855, 3142, 3158),
-(2947, 3263, 3285),
-(2953, 3270, 3285),
-(2954, 3270, 3286),
-(2955, 3270, 3266),
-(2956, 3274, 3285),
-(3050, 3398, 3390),
-(3051, 3399, 3390),
-(3052, 3398, 3415),
-(3170, 3545, 3530),
-(3172, 3545, 3535),
-(3173, 3548, 3530),
-(3174, 3545, 3551),
-(3608, 4133, 4142),
-(6146, 6917, 6965),
-(6148, 6919, 6965),
-(6150, 6921, 6965),
-(6152, 6923, 6965),
-(6154, 6925, 6965),
-(6158, 6929, 6965),
-(6199, 6970, 6965),
-(6201, 6972, 6965),
-(6204, 6974, 6965),
-(6205, 6975, 6965),
-(6207, 6978, 6965),
-(6873, 65, 805),
-(6874, 97, 805),
-(6875, 66, 775),
-(6876, 98, 775),
-(6877, 66, 803),
-(6878, 98, 803),
-(6879, 66, 817),
-(6880, 98, 817),
-(6881, 199, 769),
-(6882, 231, 769),
-(6883, 68, 775),
-(6884, 100, 775),
-(6885, 68, 803),
-(6886, 100, 803),
-(6887, 68, 817),
-(6888, 100, 817),
-(6889, 68, 807),
-(6890, 100, 807),
-(6891, 68, 813),
-(6892, 100, 813),
-(6893, 274, 768),
-(6894, 275, 768),
-(6895, 274, 769),
-(6896, 275, 769),
-(6897, 69, 813),
-(6898, 101, 813),
-(6899, 69, 816),
-(6900, 101, 816),
-(6901, 552, 774),
-(6902, 553, 774),
-(6903, 70, 775),
-(6904, 102, 775),
-(6905, 71, 772),
-(6906, 103, 772),
-(6907, 72, 775),
-(6908, 104, 775),
-(6909, 72, 803),
-(6910, 104, 803),
-(6911, 72, 776),
-(6912, 104, 776),
-(6913, 72, 807),
-(6914, 104, 807),
-(6915, 72, 814),
-(6916, 104, 814),
-(6917, 73, 816),
-(6918, 105, 816),
-(6919, 207, 769),
-(6920, 239, 769),
-(6921, 75, 769),
-(6922, 107, 769),
-(6923, 75, 803),
-(6924, 107, 803),
-(6925, 75, 817),
-(6926, 107, 817),
-(6927, 76, 803),
-(6928, 108, 803),
-(6929, 7734, 772),
-(6930, 7735, 772),
-(6931, 76, 817),
-(6932, 108, 817),
-(6933, 76, 813),
-(6934, 108, 813),
-(6935, 77, 769),
-(6936, 109, 769),
-(6937, 77, 775),
-(6938, 109, 775),
-(6939, 77, 803),
-(6940, 109, 803),
-(6941, 78, 775),
-(6942, 110, 775),
-(6943, 78, 803),
-(6944, 110, 803),
-(6945, 78, 817),
-(6946, 110, 817),
-(6947, 78, 813),
-(6948, 110, 813),
-(6949, 213, 769),
-(6950, 245, 769),
-(6951, 213, 776),
-(6952, 245, 776),
-(6953, 332, 768),
-(6954, 333, 768),
-(6955, 332, 769),
-(6956, 333, 769),
-(6957, 80, 769),
-(6958, 112, 769),
-(6959, 80, 775),
-(6960, 112, 775),
-(6961, 82, 775),
-(6962, 114, 775),
-(6963, 82, 803),
-(6964, 114, 803),
-(6965, 7770, 772),
-(6966, 7771, 772),
-(6967, 82, 817),
-(6968, 114, 817),
-(6969, 83, 775),
-(6970, 115, 775),
-(6971, 83, 803),
-(6972, 115, 803),
-(6973, 346, 775),
-(6974, 347, 775),
-(6975, 352, 775),
-(6976, 353, 775),
-(6977, 7778, 775),
-(6978, 7779, 775),
-(6979, 84, 775),
-(6980, 116, 775),
-(6981, 84, 803),
-(6982, 116, 803),
-(6983, 84, 817),
-(6984, 116, 817),
-(6985, 84, 813),
-(6986, 116, 813),
-(6987, 85, 804),
-(6988, 117, 804),
-(6989, 85, 816),
-(6990, 117, 816),
-(6991, 85, 813),
-(6992, 117, 813),
-(6993, 360, 769),
-(6994, 361, 769),
-(6995, 362, 776),
-(6996, 363, 776),
-(6997, 86, 771),
-(6998, 118, 771),
-(6999, 86, 803),
-(7000, 118, 803),
-(7001, 87, 768),
-(7002, 119, 768),
-(7003, 87, 769),
-(7004, 119, 769),
-(7005, 87, 776),
-(7006, 119, 776),
-(7007, 87, 775),
-(7008, 119, 775),
-(7009, 87, 803),
-(7010, 119, 803),
-(7011, 88, 775),
-(7012, 120, 775),
-(7013, 88, 776),
-(7014, 120, 776),
-(7015, 89, 775),
-(7016, 121, 775),
-(7017, 90, 770),
-(7018, 122, 770),
-(7019, 90, 803),
-(7020, 122, 803),
-(7021, 90, 817),
-(7022, 122, 817),
-(7023, 104, 817),
-(7024, 116, 776),
-(7025, 119, 778),
-(7026, 121, 778),
-(7028, 383, 775),
-(7033, 65, 803),
-(7034, 97, 803),
-(7035, 65, 777),
-(7036, 97, 777),
-(7037, 194, 769),
-(7038, 226, 769),
-(7039, 194, 768),
-(7040, 226, 768),
-(7041, 194, 777),
-(7042, 226, 777),
-(7043, 194, 771),
-(7044, 226, 771),
-(7045, 7840, 770),
-(7046, 7841, 770),
-(7047, 258, 769),
-(7048, 259, 769),
-(7049, 258, 768),
-(7050, 259, 768),
-(7051, 258, 777),
-(7052, 259, 777),
-(7053, 258, 771),
-(7054, 259, 771),
-(7055, 7840, 774),
-(7056, 7841, 774),
-(7057, 69, 803),
-(7058, 101, 803),
-(7059, 69, 777),
-(7060, 101, 777),
-(7061, 69, 771),
-(7062, 101, 771),
-(7063, 202, 769),
-(7064, 234, 769),
-(7065, 202, 768),
-(7066, 234, 768),
-(7067, 202, 777),
-(7068, 234, 777),
-(7069, 202, 771),
-(7070, 234, 771),
-(7071, 7864, 770),
-(7072, 7865, 770),
-(7073, 73, 777),
-(7074, 105, 777),
-(7075, 73, 803),
-(7076, 105, 803),
-(7077, 79, 803),
-(7078, 111, 803),
-(7079, 79, 777),
-(7080, 111, 777),
-(7081, 212, 769),
-(7082, 244, 769),
-(7083, 212, 768),
-(7084, 244, 768),
-(7085, 212, 777),
-(7086, 244, 777),
-(7087, 212, 771),
-(7088, 244, 771),
-(7089, 7884, 770),
-(7090, 7885, 770),
-(7091, 416, 769),
-(7092, 417, 769),
-(7093, 416, 768),
-(7094, 417, 768),
-(7095, 416, 777),
-(7096, 417, 777),
-(7097, 416, 771),
-(7098, 417, 771),
-(7099, 416, 803),
-(7100, 417, 803),
-(7101, 85, 803),
-(7102, 117, 803),
-(7103, 85, 777),
-(7104, 117, 777),
-(7105, 431, 769),
-(7106, 432, 769),
-(7107, 431, 768),
-(7108, 432, 768),
-(7109, 431, 777),
-(7110, 432, 777),
-(7111, 431, 771),
-(7112, 432, 771),
-(7113, 431, 803),
-(7114, 432, 803),
-(7115, 89, 768),
-(7116, 121, 768),
-(7117, 89, 803),
-(7118, 121, 803),
-(7119, 89, 777),
-(7120, 121, 777),
-(7121, 89, 771),
-(7122, 121, 771),
-(7129, 945, 787),
-(7130, 945, 788),
-(7131, 7936, 768),
-(7132, 7937, 768),
-(7133, 7936, 769),
-(7134, 7937, 769),
-(7135, 7936, 834),
-(7136, 7937, 834),
-(7137, 913, 787),
-(7138, 913, 788),
-(7139, 7944, 768),
-(7140, 7945, 768),
-(7141, 7944, 769),
-(7142, 7945, 769),
-(7143, 7944, 834),
-(7144, 7945, 834),
-(7145, 949, 787),
-(7146, 949, 788),
-(7147, 7952, 768),
-(7148, 7953, 768),
-(7149, 7952, 769),
-(7150, 7953, 769),
-(7151, 917, 787),
-(7152, 917, 788),
-(7153, 7960, 768),
-(7154, 7961, 768),
-(7155, 7960, 769),
-(7156, 7961, 769),
-(7157, 951, 787),
-(7158, 951, 788),
-(7159, 7968, 768),
-(7160, 7969, 768),
-(7161, 7968, 769),
-(7162, 7969, 769),
-(7163, 7968, 834),
-(7164, 7969, 834),
-(7165, 919, 787),
-(7166, 919, 788),
-(7167, 7976, 768),
-(7168, 7977, 768),
-(7169, 7976, 769),
-(7170, 7977, 769),
-(7171, 7976, 834),
-(7172, 7977, 834),
-(7173, 953, 787),
-(7174, 953, 788),
-(7175, 7984, 768),
-(7176, 7985, 768),
-(7177, 7984, 769),
-(7178, 7985, 769),
-(7179, 7984, 834),
-(7180, 7985, 834),
-(7181, 921, 787),
-(7182, 921, 788),
-(7183, 7992, 768),
-(7184, 7993, 768),
-(7185, 7992, 769),
-(7186, 7993, 769),
-(7187, 7992, 834),
-(7188, 7993, 834),
-(7189, 959, 787),
-(7190, 959, 788),
-(7191, 8000, 768),
-(7192, 8001, 768),
-(7193, 8000, 769),
-(7194, 8001, 769),
-(7195, 927, 787),
-(7196, 927, 788),
-(7197, 8008, 768),
-(7198, 8009, 768),
-(7199, 8008, 769),
-(7200, 8009, 769),
-(7201, 965, 787),
-(7202, 965, 788),
-(7203, 8016, 768),
-(7204, 8017, 768),
-(7205, 8016, 769),
-(7206, 8017, 769),
-(7207, 8016, 834),
-(7208, 8017, 834),
-(7209, 933, 788),
-(7210, 8025, 768),
-(7211, 8025, 769),
-(7212, 8025, 834),
-(7213, 969, 787),
-(7214, 969, 788),
-(7215, 8032, 768),
-(7216, 8033, 768),
-(7217, 8032, 769),
-(7218, 8033, 769),
-(7219, 8032, 834),
-(7220, 8033, 834),
-(7221, 937, 787),
-(7222, 937, 788),
-(7223, 8040, 768),
-(7224, 8041, 768),
-(7225, 8040, 769),
-(7226, 8041, 769),
-(7227, 8040, 834),
-(7228, 8041, 834),
-(7229, 945, 768),
-(7231, 949, 768),
-(7233, 951, 768),
-(7235, 953, 768),
-(7237, 959, 768),
-(7239, 965, 768),
-(7241, 969, 768),
-(7243, 7936, 837),
-(7244, 7937, 837),
-(7245, 7938, 837),
-(7246, 7939, 837),
-(7247, 7940, 837),
-(7248, 7941, 837),
-(7249, 7942, 837),
-(7250, 7943, 837),
-(7251, 7944, 837),
-(7252, 7945, 837),
-(7253, 7946, 837),
-(7254, 7947, 837),
-(7255, 7948, 837),
-(7256, 7949, 837),
-(7257, 7950, 837),
-(7258, 7951, 837),
-(7259, 7968, 837),
-(7260, 7969, 837),
-(7261, 7970, 837),
-(7262, 7971, 837),
-(7263, 7972, 837),
-(7264, 7973, 837),
-(7265, 7974, 837),
-(7266, 7975, 837),
-(7267, 7976, 837),
-(7268, 7977, 837),
-(7269, 7978, 837),
-(7270, 7979, 837),
-(7271, 7980, 837),
-(7272, 7981, 837),
-(7273, 7982, 837),
-(7274, 7983, 837),
-(7275, 8032, 837),
-(7276, 8033, 837),
-(7277, 8034, 837),
-(7278, 8035, 837),
-(7279, 8036, 837),
-(7280, 8037, 837),
-(7281, 8038, 837),
-(7282, 8039, 837),
-(7283, 8040, 837),
-(7284, 8041, 837),
-(7285, 8042, 837),
-(7286, 8043, 837),
-(7287, 8044, 837),
-(7288, 8045, 837),
-(7289, 8046, 837),
-(7290, 8047, 837),
-(7291, 945, 774),
-(7292, 945, 772),
-(7293, 8048, 837),
-(7294, 945, 837),
-(7295, 940, 837),
-(7296, 945, 834),
-(7297, 8118, 837),
-(7298, 913, 774),
-(7299, 913, 772),
-(7300, 913, 768),
-(7302, 913, 837),
-(7307, 168, 834),
-(7308, 8052, 837),
-(7309, 951, 837),
-(7310, 942, 837),
-(7311, 951, 834),
-(7312, 8134, 837),
-(7313, 917, 768),
-(7315, 919, 768),
-(7317, 919, 837),
-(7318, 8127, 768),
-(7319, 8127, 769),
-(7320, 8127, 834),
-(7321, 953, 774),
-(7322, 953, 772),
-(7323, 970, 768),
-(7325, 953, 834),
-(7326, 970, 834),
-(7327, 921, 774),
-(7328, 921, 772),
-(7329, 921, 768),
-(7331, 8190, 768),
-(7332, 8190, 769),
-(7333, 8190, 834),
-(7334, 965, 774),
-(7335, 965, 772),
-(7336, 971, 768),
-(7338, 961, 787),
-(7339, 961, 788),
-(7340, 965, 834),
-(7341, 971, 834),
-(7342, 933, 774),
-(7343, 933, 772),
-(7344, 933, 768),
-(7346, 929, 788),
-(7347, 168, 768),
-(7350, 8060, 837),
-(7351, 969, 837),
-(7352, 974, 837),
-(7353, 969, 834),
-(7354, 8182, 837),
-(7355, 927, 768),
-(7357, 937, 768),
-(7359, 937, 837),
-(7731, 8592, 824),
-(7732, 8594, 824),
-(7751, 8596, 824),
-(7782, 8656, 824),
-(7783, 8660, 824),
-(7784, 8658, 824),
-(7837, 8707, 824),
-(7842, 8712, 824),
-(7845, 8715, 824),
-(7869, 8739, 824),
-(7871, 8741, 824),
-(7898, 8764, 824),
-(7901, 8771, 824),
-(7904, 8773, 824),
-(7906, 8776, 824),
-(7929, 61, 824),
-(7931, 8801, 824),
-(7942, 8781, 824),
-(7943, 60, 824),
-(7944, 62, 824),
-(7945, 8804, 824),
-(7946, 8805, 824),
-(7949, 8818, 824),
-(7950, 8819, 824),
-(7953, 8822, 824),
-(7954, 8823, 824),
-(7961, 8826, 824),
-(7962, 8827, 824),
-(7965, 8834, 824),
-(7966, 8835, 824),
-(7969, 8838, 824),
-(7970, 8839, 824),
-(8005, 8866, 824),
-(8006, 8872, 824),
-(8007, 8873, 824),
-(8008, 8875, 824),
-(8057, 8828, 824),
-(8058, 8829, 824),
-(8059, 8849, 824),
-(8060, 8850, 824),
-(8067, 8882, 824),
-(8068, 8883, 824),
-(8069, 8884, 824),
-(8070, 8885, 824),
-(10058, 10973, 824),
-(11322, 12363, 12441),
-(11324, 12365, 12441),
-(11326, 12367, 12441),
-(11328, 12369, 12441),
-(11330, 12371, 12441),
-(11332, 12373, 12441),
-(11334, 12375, 12441),
-(11336, 12377, 12441),
-(11338, 12379, 12441),
-(11340, 12381, 12441),
-(11342, 12383, 12441),
-(11344, 12385, 12441),
-(11347, 12388, 12441),
-(11349, 12390, 12441),
-(11351, 12392, 12441),
-(11358, 12399, 12441),
-(11359, 12399, 12442),
-(11361, 12402, 12441),
-(11362, 12402, 12442),
-(11364, 12405, 12441),
-(11365, 12405, 12442),
-(11367, 12408, 12441),
-(11368, 12408, 12442),
-(11370, 12411, 12441),
-(11371, 12411, 12442),
-(11394, 12358, 12441),
-(11402, 12445, 12441),
-(11416, 12459, 12441),
-(11418, 12461, 12441),
-(11420, 12463, 12441),
-(11422, 12465, 12441),
-(11424, 12467, 12441),
-(11426, 12469, 12441),
-(11428, 12471, 12441),
-(11430, 12473, 12441),
-(11432, 12475, 12441),
-(11434, 12477, 12441),
-(11436, 12479, 12441),
-(11438, 12481, 12441),
-(11441, 12484, 12441),
-(11443, 12486, 12441),
-(11445, 12488, 12441),
-(11452, 12495, 12441),
-(11453, 12495, 12442),
-(11455, 12498, 12441),
-(11456, 12498, 12442),
-(11458, 12501, 12441),
-(11459, 12501, 12442),
-(11461, 12504, 12441),
-(11462, 12504, 12442),
-(11464, 12507, 12441),
-(11465, 12507, 12442),
-(11488, 12454, 12441),
-(11491, 12527, 12441),
-(11492, 12528, 12441),
-(11493, 12529, 12441),
-(11494, 12530, 12441),
-(11498, 12541, 12441),
-(65220, 67026, 775),
-(65247, 67034, 775),
-(67038, 69785, 69818),
-(67040, 69787, 69818),
-(67055, 69797, 69818),
-(67161, 69937, 69927),
-(67162, 69938, 69927),
-(67575, 70471, 70462),
-(67576, 70471, 70487),
-(67602, 70530, 70601),
-(67604, 70532, 70587),
-(67610, 70539, 70594),
-(67612, 70544, 70601),
-(67660, 70594, 70594),
-(67661, 70594, 70584),
-(67662, 70594, 70601),
-(67835, 70841, 70842),
-(67836, 70841, 70832),
-(67838, 70841, 70845),
-(67914, 71096, 71087),
-(67915, 71097, 71087),
-(68388, 71989, 71984),
-(76279, 90398, 90398),
-(76280, 90398, 90409),
-(76281, 90398, 90399),
-(76282, 90409, 90399),
-(76283, 90398, 90400),
-(76284, 90401, 90399),
-(76285, 90402, 90399),
-(76286, 90401, 90400),
-(77208, 93543, 93543),
-(77209, 93539, 93543),
-(77210, 93545, 93543),
-(86922, 119127, 119141),
-(86923, 119128, 119141),
-(86924, 119135, 119150),
-(86925, 119135, 119151),
-(86926, 119135, 119152),
-(86927, 119135, 119153),
-(86928, 119135, 119154),
-(87015, 119225, 119141),
-(87016, 119226, 119141),
-(87017, 119227, 119150),
-(87018, 119228, 119150),
-(87019, 119227, 119151),
-(87020, 119228, 119151),
-]
\ No newline at end of file
int idx = starter_property->comb_index;
if (idx < 0x3FF && current_property->comb_issecond) {
int len = starter_property->comb_length;
- utf8proc_int32_t max_second = utf8proc_combinations[idx + len - 1][0];
+ utf8proc_uint32_t max_second = utf8proc_combinations[idx + len - 1][0];
if (current_char <= max_second) {
// TODO: binary search? arithmetic search?
for (int off = 0; off < len; ++off) {
- utf8proc_int32_t second = utf8proc_combinations[idx + off][0];
+ utf8proc_uint32_t second = utf8proc_combinations[idx + off][0];
if (current_char < second) {
/* not found */
break;
}
if (current_char == second) {
/* found */
- utf8proc_int32_t composition = utf8proc_combinations[idx + off][1];
+ utf8proc_uint32_t composition = utf8proc_combinations[idx + off][1];
*starter = composition;
starter_property = NULL;
break;